package com.arsn.myf.generate.entity;

import com.arsn.myf.common.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * 代码生成业务表字段对象
 *
 * @author zhongrj
 * @date 2022-12-12 20:46:24
 */
@Data
@TableName("sys_table_column_info")
@ApiModel(value = "TableColumnInfo对象", description = "TableColumnInfo对象")
public class TableColumnInfo extends BaseEntity implements Serializable{

    private static final long serialVersionUID = 1L;

    /**
    * id
    */
    @TableId(value = "id",type = IdType.AUTO)
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "id")
    private Long id;

    /**
    * 表id
    */
    @ApiModelProperty(value = "表id")
    private Long tableId;

    /**
    * 列名称
    */
    @ApiModelProperty(value = "列名称")
    private String columnName;

    /**
    * 列描述
    */
    @ApiModelProperty(value = "列描述")
    private String columnComment;

    /**
    * 列类型
    */
    @ApiModelProperty(value = "列类型")
    private String columnType;

    /**
    * JAVA类型
    */
    @ApiModelProperty(value = "JAVA类型")
    private String javaType;

    /**
    * JAVA字段名
    */
    @ApiModelProperty(value = "JAVA字段名")
    private String javaField;

    /**
    * 是否主键（1是）
    */
    @ApiModelProperty(value = "是否主键（1是）")
    private String isPk;

    /**
    * 是否自增（1是）
    */
    @ApiModelProperty(value = "是否自增（1是）")
    private String isIncrement;

    /**
    * 是否必填（1是）
    */
    @ApiModelProperty(value = "是否必填（1是）")
    private String isRequired;

    /**
    * 是否为插入字段（1是）
    */
    @ApiModelProperty(value = "是否为插入字段（1是）")
    private String isInsert;

    /**
    * 是否编辑字段（1是）
    */
    @ApiModelProperty(value = "是否编辑字段（1是）")
    private String isEdit;

    /**
    * 是否列表字段（1是）
    */
    @ApiModelProperty(value = "是否列表字段（1是）")
    private String isList;

    /**
    * 是否查询字段（1是）
    */
    @ApiModelProperty(value = "是否查询字段（1是）")
    private String isQuery;

    /**
    * 查询方式（等于、不等于、大于、小于、范围）
    */
    @ApiModelProperty(value = "查询方式（等于、不等于、大于、小于、范围）")
    private String queryType;

    /**
    * 显示类型（文本框、文本域、下拉框、复选框、单选框、日期控件）
    */
    @ApiModelProperty(value = "显示类型（文本框、文本域、下拉框、复选框、单选框、日期控件）")
    private String viewType;

    /**
    * 字典编号
    */
    @ApiModelProperty(value = "字典编号")
    private String dictCode;

    /**
    * 排序
    */
    @ApiModelProperty(value = "排序")
    private Integer sort;

}
